home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 2 / Atari Mega Archive CD - Volume 2.iso / minix / up1510.doc < prev    next >
Text File  |  1995-04-22  |  11KB  |  251 lines

  1. Minix ST 1.5.10 upgrade guide
  2.   -- Howard Chu, July 1990
  3.  
  4.  
  5.  
  6. INTRODUCTION
  7.  
  8. This document is part of a kit for upgrading your stock, unmodified
  9. Minix ST 1.1 system to version 1.5.10, the latest official ST version.
  10. The kit goes straight to 1.5.10 with no stops along the way... Please
  11. read this entire document before doing anything to your system. We'll
  12. both be happier for it in the end.
  13.  
  14. This kit is basically a synthesis of all the work done by Frans Meulenbroeks,
  15. who posted the original upgrade material. His ":Install" installation
  16. guide is also included here, you should read the introduction there for
  17. more background info, restrictions, copyright, etc.
  18.  
  19. HARDWARE REQUIREMENTS
  20.  
  21. I did this upgrade on a system with a hard drive. I don't really want to
  22. think about doing it on a floppy-only system. I've tried, and it makes my
  23. brain hurt. The entire upgrade package compresses down to a 2.5 megabyte
  24. compressed tar file. You'll need nearly 6 megabytes of space to extract
  25. everything. You'll need around another 2.5 megabytes for all the resulting
  26. binary files. I worked out this package on a Unix system, and downloaded
  27. files to a TOS partition to be retrieved later (using tosread in Minix).
  28. If you don't have 10 megabytes of disk space attached to your ST you
  29. might consider splitting things up on a Unix box before going to your ST.
  30. This will be practical for a system with two double-sided disk drives,
  31. as the largest directory is only 500K (Kermit source).
  32.  
  33. SETTING UP
  34.  
  35. The whole kit consists of three parts, including this document. The other
  36. two parts are:
  37.     up1510a.tar - 1.5 binaries necessary for the upgrade
  38.     up1510b.tar - the complete 1.5.10 upgrade files.
  39.  
  40. I suggest extracting the up1510a tar file into your /tmp directory,
  41. and moving the files to their proper place from there. There are two
  42. versions of cv in this tar file, a 1.1 and a 1.5 version. I'm not sure
  43. that the 1.1 version works very well... I think you will need the 1.5
  44. version to create kernel.mix from kernel.out. (Sorry, when I got to this
  45. stage things weren't working very well and I didn't keep good track of
  46. what the problems were...) At any rate, you may want to grab the source
  47. for the version 1.1 cv from the 1.1fixes file (also available on terminator,
  48. er, atari.archive.umich.edu, the same place you found this stuff...). If
  49. you compile that on your 1.1 system before doing this upgrade, you will
  50. have a good, usable version 1.1 cv.
  51.  
  52. The up1510b.tar file is meant to be extracted into /usr of your Minix
  53. filesystem. You need to make some preparations before this, of course.
  54. You will only need a few parts of the 1.1 source tree, and none of the
  55. include directory. I suggest renaming them, just to keep them handy in
  56. case you have trouble with the upgrade.
  57.  
  58.     mv /usr/src /usr/src1.1
  59.     mv /usr/include /usr/include1.1
  60.     mv /usr/lib/libc.a /usr/lib/libc1.1.a
  61.  
  62. You should then make a new /usr/src directory, and copy a few files
  63. from /usr/src1.1 to it.
  64.  
  65.     mkdir /usr/src /usr/src/commands /usr/src/lib /usr/src/lib/M68000
  66.     cp /usr/src1.1/commands/dd.c /usr/src/commands
  67.     cpdir /usr/src1.1/commands/mined /usr/src/commands/mined
  68.     cpdir /usr/src1.1/commands/sh /usr/src/commands/sh
  69.     cp /usr/src1.1/lib/*.s /usr/src/lib/M68000
  70.     cpdir /usr/src1.1/fs /usr/src/fs
  71.     cpdir /usr/src1.1/kernel /usr/src/kernel
  72.     cpdir /usr/src1.1/mm /usr/src/mm
  73.  
  74. That's it for reusing 1.1 sources. Everything else is included here, as well
  75. as some patches to the above-mentioned source files. As mentioned before,
  76. you should also have the patch program from the 1.1 fixup posting. If you're
  77. feeling particularly brave, or confident that you have all your 1.1 stuff
  78. backed up safely on floppy, you can simply move the appropriate files to
  79. their new destinations instead of copying them.
  80.  
  81. You will also need to rename a few of the .s source files in the M68000
  82. directory. 
  83.     cd /usr/src/lib/M68000
  84.     mv stbrksz.s brksize.s
  85.     mv stcrtso.s crtso.s
  86.     mv stend.s end.s
  87.     mv sthead.s head.s
  88.     mv stsetjmp.s setjmp.s
  89.     mv stsndrec.s sendrec.s
  90.  
  91. If you have enough memory, you should create a system with a huge RAM disk.
  92. If you can fit all of the compiler files onto it, the compilation step will
  93. go a lot faster. (Probably talking around a 700K RAM disk here. 270K is
  94. used for /lib.)
  95.     /bin/ar        - needed after the new library is done
  96.     /bin/as        - needed for all compiles
  97.     /bin/cat    - helpful for applying the patches
  98.     /bin/cc        - needed for all compiles
  99.     /bin/chmem    - needed for most commands
  100.     /bin/chmod    - needed for some commands
  101.     /bin/compress    - actually zcat - for setup
  102.     /bin/cp        - needed for some commands
  103.     /bin/cpdir    - helpful in setup
  104.     /bin/echo    - needed for many commands (used in makefile)
  105.     /bin/ln        - needed for some installation steps
  106.     /bin/ls        - helpful
  107.     /bin/make    - needed for all compiles
  108.     /bin/mkdir    - setup
  109.     /bin/mv        - needed for library
  110.     /bin/rm        - needed for some pieces
  111.     /bin/sh        - needed for everything
  112.     /bin/tar    - setup
  113.     /bin/tos...    - setup
  114.     /lib/cem
  115.     /lib/cg
  116.     /lib/cpp
  117.     /lib/cv        - all parts of the compiler
  118.     /lib/ld
  119.     /lib/opt
  120.  
  121.  
  122. CONFIGURING THE TOOLS
  123.  
  124. These are the recommended amounts of memory for each of the compiler tools:
  125.  
  126.     cc    20000
  127.     cpp    30000
  128.     cv    50000
  129.     as    50000
  130.     ld    100000
  131.     cem    110000
  132.     cg    30000
  133.     opt    60000
  134.     sh    20000
  135.  
  136. INSTALLATION PROCESS
  137.  
  138. 1. go to /usr, extract the up1510b.tar file.
  139.    I recommend leaving the file compressed on a TOS partition, to save
  140.    space. Extract with something like:
  141.     tosread hd0a minix/upgrade.z | zcat | tar x -
  142.    (you will need the binary of tar included in up1510a.tar, which allows
  143.    reading from stdin instead of a named file.) The file Total.crc has the
  144.    full crc values for what you should have *after* applying the patches
  145.    that are also included. The directories containing patches have a file
  146.    Diff.crc containing the crc values for all the patches. You shouldn't
  147.    need to check these values, since any corruption would cause either/both
  148.    zcat or tar to fail.
  149.    [Another note - I named my hard drive devices:
  150.     hd00    - block 0        hd10 = 2nd drive, hd20 = 3rd drive
  151.     hd0a    - 1st partition        hd1a = 2nd drive, hd2a = 3rd drive
  152.     hd0b    - 2nd partition            ... etc...
  153.     hd0c    - 3rd partition
  154.     hd0d    - 4th partition
  155.     hd0e    - entire disk]
  156. 2. cd /usr/include/minix
  157.    edit the config.h file. you may want to edit boot.h, but I have no idea
  158.    what you'd want to stick in there.
  159. 3. cd /usr/src/lib; make
  160. 4. mv libc.a /usr/lib
  161.    If you're short on space, you can remove the .o files after any
  162.    successful compilation step.
  163. 4a. You may want to make the new version of make at this point. It'll come
  164.    in handy for the following compilation.
  165.    cd /usr/src/commands/make; make; mv make /bin
  166. 5. cd /usr/src/fs; cat *.D | patch
  167.      If you get any rejects, use the crc program from up1510a and compare
  168.      the crc values for the .D diff files with the values in Diff.crc.
  169.      If you're really short on space, you can "rm *~ *.D Diff.crc" after
  170.      running patch.
  171.    make
  172. 6. cd /usr/src/kernel; cat *.D | patch; make
  173. 7. cd /usr/src/mm; cat *.D | patch; make
  174. 8. cd /usr/src/tools; make
  175. 9. copy the files from /usr/etc to /etc. If /etc is on the ram disk, make
  176.    sure you copy the files to the real disk that the ram disk was loaded
  177.    from. You may want to edit the passwd file as well. I wasn't able to
  178.    log in as root after the upgrade, so I dropped back and blanked out the
  179.    root password in the new passwd file. You may also want to edit the rc
  180.    file to suit your system.
  181.    If your minix.img is larger than 0x40000 bytes (due to allocating more
  182.    buffer cache in /usr/include/minix/config.h) you will have to change the
  183.    value of ldaddr in boot.s, then remake minix.img.
  184.    copy the minix.img file to a disk.
  185. 10. cd /usr/src/test; make
  186. 11. cd /usr/src/commands; patch < *.D
  187.     (there's only one .D diff file here.)
  188. 12. cd mined; cat *.D | patch
  189. 13. cd ../sh; cat *.D | patch
  190. 14. cd .. (run make in /usr/src/commands)
  191.     You may want to go out for a while. libc took a long time, and the
  192.     other directories were so-so, but this is gonna go for *hours*...
  193.     Also, the official makefile doesn't make it particularly easy to
  194.     install the compiled files. I've put a slightly modified Makefile.hyc
  195.     here, that puts the newly created executables in /usr/src/commands/bin.
  196.